Hi Tom,
I've been fighting SnapAmp faults when I try to run GCode generated by CAM.
I've narrowed the problem down to circular movements that are accompanied by a movement in Z.
Our CNC machine has rack and pinion mechanisms for X and Y, and a ballscrew for Z.
I've found that the SnapAmp will fault if I try to run the ballscrew too fast, so I set theAxis Parameters maximums for Z to be really slow, 0.1 inches/sec velocity and 0.01 inches/sec squared for acceleration. By contrast X and Y are currently set to 1.5 and 1.2 inches/sec velocity, although they could go much faster.
But it appears that the maximum velocity is not honored for circular movements that also have a Z component.
Here's an example.
The last line in the following GCode moves the cutter in a circle, while changing the Z position as it goes (dimensions are in mm).
N8595 G01 X11.5569 Y58.439 F2000
N8599 X11.4141 Y58.5819 F2755.
N8600 G03 X10.821 Y57.15 Z-10.025 I1.4319 J-1.4319
This line will cause a fault, and I observe that just prior to the fault, the Z axis is rapidly accelerated to a velocity that is clearly much higher than the maximum I put into the Trajectory Planner.
Contrast this behavior to what happens when the Z move is separated from the X-Y circle:
N8595 G01 X11.5569 Y58.439 F2000
N8599 X11.4141 Y58.5819 F2755.
Z-10.025
N8600 G03 X10.821 Y57.15 I1.4319 J-1.4319
This time, the Z axis moves very slowly to -10.025 (which is the way the Trajectory Planner is set up), even though the programmed feed rate is much higher than that, then moves X and Y quickly through the circle.
I would have thought that the Trajectory Planner wouldn't move Z faster than the maximum that is set. Is this not true? Is there any way to mitigate the problem of moving the Z axis faster than the maximum that is set, other than changing the GCode?
What other GCode constructions can cause the same problem, making an axis move faster than the maximum set in the Trajectory Planner? Is it a problem to have different maximum speeds for X and Y?
Thanks,
Hugh